home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part1 / 3858 < prev    next >
Encoding:
Internet Message Format  |  1996-08-06  |  3.5 KB

  1. Path: news.delcoelect.com!usenet
  2. From: "Richard E. Fiegle" <refiegle@mail.delcoelect.com>
  3. Newsgroups: comp.edu,comp.lang.c,comp.lang.c++
  4. Subject: Re: C or C++ for a 14-year old? The definitive reply
  5. Date: 26 Jan 1996 12:25:28 GMT
  6. Organization: Delco Electronics
  7. Distribution: usa
  8. Message-ID: <4eah7o$j5c@kocrsv08.delcoelect.com>
  9. References: <4cve3a$f0n@news.iconn.net> <4b30ld$lp2$1@mhafc.production.compuserve.com> <qq91jhhtbr.fsf@tartarus.ucsd.edu> <4danli$llb@news.onramp.net> <4e3mvdINNpi3@mayne.ugrad.cs.ubc.ca>
  10. NNTP-Posting-Host: kopumc01.delcoelect.com
  11. Mime-Version: 1.0
  12. Content-Type: text/plain; charset=us-ascii
  13. Content-Transfer-Encoding: 7bit
  14. X-Mailer: Mozilla 1.1N (Macintosh; I; PPC)
  15. X-URL: news:4e3mvdINNpi3@mayne.ugrad.cs.ubc.ca
  16.  
  17. c2a192@ugrad.cs.ubc.ca (Kazimir Kylheku) wrote:
  18. >In article <4danli$llb@news.onramp.net>, Rick Lutowski <oa@iah.com> wrote:
  19. >>thecrow@iconn.net (The Crow) wrote:
  20. >>>Whether you start with C or C++ is irrelevant, learning one will allow you to 
  21. >>>learn the other with ease.
  22. >>
  23. >>This is true of the syntax, but not of the methodology or theory
  24. >>behind them.  C and C++ are two totally different languages
  25. >>conceptually, in spite of their surface similarity.
  26. >>
  27. >>If you know C and are thinking about learning C++, first go to
  28. >>a local university library, find some papers written by David
  29. >>Parnas, and read them to learn about information-hiding.  Then 
  30. >>go on to some of the other OO authors like Booch to learn about
  31. >>classes and inheritance, polymorphism and dynamic binding.
  32. >>Once you think you understand those concepts, you are ready to
  33. >>learn C++.
  34. >
  35. >I know about those things, and can practice most of them under C.
  36. >It's not entirely clear that any real benefits are derived from frills like
  37. >language support for polymorphism and inheritance.
  38. >
  39. >Information hiding leads to inefficiencies---and you _can_ have it in C, by the
  40. >way. Even the C preprocessor lets you have efficient information hiding, if you
  41. >use it with discipline. It's cheaper to access elements of a function via
  42. >macros than be forced to communicate via abstract function calls. The only
  43. >advantage that information hiding gives you is that 1) you can change the
  44. >implementation of the data structure easily without recompiling modules that
  45. >use it (big deal). 2) you have more control over how your software gets used. I
  46. >think it's point 2 that is the chief motivation, because it allows capitalists
  47. >to have better control over the production and trade of software.
  48. >
  49. >The concepts of object oriented design and programming transcend the choice of
  50. >programming language. Once can practice sound OO design with C, if one is so
  51. >inclined.
  52. >-- 
  53. >
  54.  
  55. Information hiding leads to inefficiencies---and you _can_ have it in C, by the
  56. way. Even the C preprocessor lets you have efficient information hiding, if you
  57. use it with discipline. It's cheaper to access elements of a function via
  58. macros than be forced to communicate via abstract function calls. The only
  59. advantage that information hiding gives you is that 1) you can change the
  60. implementation of the data structure easily without recompiling modules that
  61. use it (big deal). 2) you have more control over how your software gets used. I
  62. think it's point 2 that is the chief motivation, because it allows capitalists
  63. to have better control over the production and trade of software.
  64.  
  65. The concepts of object oriented design and programming transcend the choice of
  66. programming language. Once can practice sound OO design with C, if one is so
  67. inclined.
  68.  
  69.  
  70.